Method and apparatus for selective distribution of discount coupons

ABSTRACT

A system for automatically distributing discount coupons or certificates in a retail store, conditioned on a preselected combination of present and past shopping behavior of a customer whose order is being processed at a checkout stand. Generation of a printable discount coupon can be based on any desired combination of customer-supplied data, obtained from a customer identification data base, past shopping activity, derived from data gathered during previous customer visits to the store, and present shopping activity, as evidenced by items identified in the current customer order. If all of the preselected conditions for generation of a coupon are satisfied, the coupon is generated and printed at the checkout stand.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to application Ser. No. 08/498,654 filed Jul. 3, 1995; application Ser. No. 08/088,617 filed Jul. 6, 1993; abandoned and application Ser. No. 07/695,650 filed May 6, 1991, abandon, and the contents of each of those applications is hereby incorporated herein by reference. This application is a continuation of application Ser. No. 08/498,654, filed Jul. 3, 1995, which is a continuation of application Ser. No. 08/088,617, filed Jul. 6, 1993, now abandoned which is a continuation of application Ser. No. 07/695,650 filed May 6, 1991, now abandoned.

BACKGROUND OF THE INVENTION

This invention relates generally to point-of-sale computer systems of the type used in retail stores to record sales transactions. More particularly, the invention relates to point-of-sale systems capable of handling discount coupons. Most point-of-sale systems have terminals that are capable of reading a code printed on each product package, and thereby determining the price from an internal file that is accessed by a store controller. Products are coded by means of a series of parallel lines, in accordance with a convention known as the Universal Product Code.

As every grocery shopper knows, many manufacturers distribute discount coupons for their products, either through the mail, or by printing them in newspapers or magazines, or enclosing them in similar or related product packages. When a customer presents a discount coupon at the time of purchase of an appropriate product, the grocery checker operating the terminal will typically key in the coupon amount, and the discount will be subtracted from the customer's bill.

This procedure often has the disadvantage that the customer may not have actually purchased the discountable product, and the coupon will then be improperly redeemed. A further disadvantage, from a customer standpoint, is that collecting coupons and taking them to the store is inconvenient, and many customers simply do not participate in any promotional program involving distributed coupons. This represents a significant loss for the manufacturers or retailers that distribute the coupons.

In the cross-referenced patent application, and in related U.S. Pat. Nos. 4,910,672 and 4,723,212, systems are disclosed for generating printable discount coupons at a checkout counter, as a result of the purchase of one or more “triggering” products. A customer may then be presented with a discount coupon for use on a subsequent visit. This technique has proved to be very successful in distributing single discount coupons in response to the purchase of selected products or groups of products, but does not address other important marketing goals of retailers.

Retailers and manufacturers of grocery items and other consumer products have long felt a need for marketing and promotional programs that were more selective in targeting customers for attention. Most promotional programs involving product discounts require the distribution of coupons to large numbers of people, most of whom do not take advantage of the discounts offered. An important goal in promotional programs is to increase the percentage of redemptions of discount coupons, but this goal can only be achieved if alternative schemes are devised to target the promotional programs more selectively than has been possible in the past. Printing discount coupons in the store has already proved to be a key feature of such programs, and printing coupons in response to the purchase of triggering items is one specific technique for customer targeting. What is still needed, however, is a more general technique for targeting customers to receive details of promotional programs, based on more than simply a single triggering purchase. The present invention is directed to this end, as will be appreciated from the following summary.

SUMMARY OF THE INVENTION

The present invention resides in a method and apparatus for generating printable discount coupons in a retail store, conditioned on some preselected combination of customer attributes and past and present customer shopping activities. In terms of apparatus, the invention comprises a plurality of terminals at customer checkout locations, each having means for reading product codes on purchased items in a customer order; a store controller with which the terminals can communicate, the store controller having access to an item record file containing price and other information for each product item; means for storing the terms and conditions of discount deals for which a customer may qualify; and means for uniquely identifying each customer, but only if preselected conditions relating to customers have been met by the specific customer whose order is being processed.

The apparatus may also include means for printing the discount coupon for immediate customer distribution. Further, the apparatus may include means for processing redemption of a printed discount coupon in a subsequent customer order, and applying a discount to the subsequent customer order if the discounted item is purchased, and means for maintaining a log of discount coupons printed and cumulative discount coupons redeemed.

More specifically, the apparatus of the invention further comprises means for identifying triggering products in the customer order, wherein each triggering product pertains to a condition of a coupon deal presently in effect or to be put into effect in the future; and customer purchase file means for storing data pertaining to the customer's purchase of triggering products, for use in determining whether future coupon deals should be effective. The means for automatically generating a printable discount coupon includes means for determining from the customer purchase file whether the customer has met all of the coupon deal conditions pertaining to past customer activity, and means for determining from the customer purchase file whether the customer has met all of the coupon deal conditions pertaining to present customer activity. A printable coupon will be generated only if the customer has met all of the required past and present customer activity requirements. These activity requirements may be selected as desired for a particular coupon deal. For example, a coupon may be generated if the customer has purchased a certain item in a specified time interval, but has not purchased a specific item in the present order.

In one form of the invention, the only condition to be satisfied before generating a coupon is that the customer is in a preselected target group of customers, which may be specified by factors such as age, residence location or income level.

In terms of a method, the invention comprises the steps of storing the terms and conditions of at least one discount coupon deal; uniquely identifying the customer whose order is being processed; determining whether the identified customer has satisfied all of the conditions of a discount coupon deal; and automatically generating a printable discount coupon if the conditions are satisfied.

In one form of the invention, the step of determining whether the identified customer has satisfied all of the conditions of the discount coupon deal includes determining whether the customer falls within a preselected target group of customers, based on information previously provided by the customer. In another form of the invention, the step of determining whether the identified customer has satisfied all of the conditions of the discount coupon deal includes determining whether the customer's past and present shopping activity satisfies preselected conditions.

More specifically, the method further comprises the steps of preselecting triggering products, each of which pertains to a condition of a discount deal presently in effect or to be put into effect later, detecting the purchase of triggering products in the customer order, and saving customer purchase data concerning the purchase of triggering products. The step of determining whether the customer's past and present shopping activity satisfies preselected conditions includes reviewing the customer purchase data saved in previous visits to the store.

It will be appreciated from the foregoing that the present invention represents a significant advance in the field of point-of-sale systems in which discount coupons can be printed in retail stores. In particular, the invention provides for very specific targeting of customers for promotional discount coupons, based on a selected combination of customer-supplied information, and present and past shopping activity by the customer. Other aspects and advantages of the invention will become apparent from the following more detailed description, taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram showing the apparatus of a point-of-sale computer system incorporating the present invention for use in a retail store;

FIG. 2 is a flowchart showing the functions performed in a general wait state processing loop, in accordance with the method of the invention;

FIG. 3 is a flowchart showing the functions performed in processing input data and generating printable discount certificates in accordance with the method of the invention;

FIGS. 3a and 3 b are flowcharts showing more detail of decision blocks 72′ and 72 of FIG. 3; and

FIG. 4 is a flowchart showing the functions performed in processing output data in accordance with the method of the invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Overview

As shown in the drawings for purposes of illustration, the present invention is concerned with point-of-sale systems for recording sales transactions involving discount coupons or certificates. FIG. 1 shows in broad outline the components of such a system. In each store in which the invention is to be used, there is a store point-of-sale controller, indicated by reference numeral 10, and a plurality of checkout terminals 12, each having an associated optical scanner 13. Associated with the store controller 10 are a number of files, one of which is an item record file, indicated at 14, and these files are used by the controller to provide information to the terminals 12. The item record file 14 contains a record for each product sold in the store, and is used to access price and other information concerning the product.

In a typical store installation, the terminals 12 and the store controller are connected together in ring bus configuration, known as the terminal processing loop, indicated at 16. Communication between the store controller 10 and the terminals 12 is made over the terminal processing loop 16.

The components described thus far, including the store controller 10, the terminals 12, the item record file 14, and the terminal processing loop 16, together constitute a conventional retail point-of-sale system. In accordance with the invention, transactions taking place at the terminals are monitored to detect the sale of preselected triggering products, and printable cumulative discount certificates are generated as required. The invention is implemented principally in software form in a personal computer 20, which is coupled to the terminal processing loop 16, as indicated by line 21, in such a manner that the personal computer appears to the store controller 10 to be another terminal.

The item record file 14 is a standard price file used in point-of-sale systems, except that it includes a trigger flag, which is an additional one-bit field. The record format of this file is shown in more detail in the cross-referenced patent application. In the process of coupon creation, the file 14 is accessed to determine if a product being purchased is a triggering product. If so, a corresponding record is retrieved from the checkout direct data base 24. This provides additional information about the discount deal that is in effect for this particular product, specifically the amount of the discount. Discount coupons may be printed as a result of purchase of a triggering item, as in the systems described in U.S. Pat. Nos. 4,910,672 and 4,723,212, or may be printed without the purchase of a triggering item, if the customer is targeted for a specific promotional program, as will be described in this specification.

Associated with the personal computer 20 are two file systems: a customer purchase file 22 and another database file 24 referred to as the checkout direct database. In operation, the personal computer 20 detects the purchase of triggering products at the terminals 12, retrieves the terms of each discount deal from the checkout direct database 24, builds a list of triggering products, and at the end of the customer transaction updates the customer purchase filed with the items in the list. The customer purchase file is interrogated to determine if any checkout direct coupons are to be printed. The personal computer 20 also controls printing of the cumulative discount certificates, through a printer output bus 26, which is connected to a printer at each terminal 12, one of the printers being shown at 28.

The personal computer 20 is also coupled to a retailer host computer 30, as indicated by line 32, which may be a telephone line or some other communication link. The retailer host computer 30 controls communications with all store controllers in the retailer's various stores, and is responsible for generating various accounting reports, as indicated at 34. The retailer host computer 30 has an associated data base 36 of various files relating to the retailer's entire store operations.

In accordance with the invention, the personal computer 20 keeps track of selected features of each customer's purchase history, in the customer purchase files 22, and the printing of coupons is conditioned on some desired combination of past history and current purchase behavior. Coupon printing may also be conditioned on demographic factors. Thus, a list of valid customers may be subject to demographic filtering either in the personal computer, or in off-line device (not shown), which provides a filtered list of customer identifiers to the personal computer. For example, a promotional program may be limited to customers in a certain age group, geographical area, or income range.

Conditioning the distribution of a coupon or certificate on past purchase behavior opens up some interesting marketing options for the retailer and manufacturer. For example, a coupon for hair shampoo can be printed some preselected time after a prior purchase of the same product, or even a different product, to provide the customer an opportunity to buy the discounted product at a time when his prior purchase has been almost completely used. Another possibility is to target households based on the categories or brand names that have been purchased over a period of time.

In general, past customer behavior data utilized in the invention can be either derived from existing data bases, or gathered by the apparatus of the invention. Retailers that have customer identification cards in place are already able to analyze customer behavior in terms of departmental sales records, shopping frequency and order size over a period of time. Based on these factors, a retailer could provide a customer target list for a specific promotional program. For example, if a store were to open a new delicatessen department, it could later identify those customers who had not used it, and target them for a special discount promotion. The other level at which customer behavior data may be employed involves the collection of the behavior data as well as its use. Sales for a selected category of items, or for multiple categories of items, are monitored over a period of time, perhaps several months, and the results are accumulated in the customer purchase files 22. A promotional program can then use the data in these files to identify and target customers whose past shopping behavior in the selected category meets some desired criterion. For example, in a promotional program that distributes discount coupons for a particular brand of coffee, the targets could be customers who have purchased some other brand in the last several months. Another promotion might be used to reward customers whose shopping behavior demonstrates loyalty to a particular brand of a product.

In all of the cases and examples described above, the distribution of discount coupons or certificates may also be conditioned on a customer's present behavior, as determined by the size and nature of the customer's present transaction at the store. A condition for printing a coupon may be the size of the order, the purchase of a particular item, or the purchase of a particular size or quantity of an item.

Certificate Creation and Redemption

The coupon creation functions performed by the apparatus of the invention are shown in FIGS. 2, 3, 3 a, 3 b and 4. FIG. 2 illustrates a “general wait state” of processing performed in the personal computer 20, which involves cyclic checking to determine whether any specific processing task needs to be performed. Once processing is initiated to a certain stage, a return is made to the general wait state, as will be further explained. For purposes of explanation, the processing steps performed by the invention are depicted as involving a transaction at a single terminal. It will be understood, however, that the personal computer 20 provides effectively simultaneous processing for all of the terminals 12, but to illustrate processing for multiple terminals would render the flowcharts unduly complicated.

The general wait state processing loop shown in FIG. 2 includes a series of four decision blocks 40-43. In block 40, the computer 20 determines whether there is any input data to process. Input data is either from a terminal bar code scanner (not shown), or from a terminal keyboard (not shown). If there is input to process, the computer 20 enters an input processing sequence, shown at 44 and, in more detail, in FIG. 3. In block 41, the computer determines whether there is any output to process. If so, an output processing sequence is entered, as indicated at block 46 and, in more detail, in FIG. 4.

Block 42 in the general wait state processing loop determines whether any response has been received from a prior request made to the controller 10 for file access. As will become apparent, the computer 20 makes a number of requests for file access but, because gaining access to a file may take a relatively long time, processing continues in the general wait state loop until a response to the request is received. Then a response return is made, as indicated at 48, which simply means that control is transferred back to a point in the program at which the file access request was made, so that the program can continue in its proper sequence. Finally, decision block 43 in the general wait state loop determines whether a timeout is complete. In some point of sale systems, printing of cumulative discount certificates may be accomplished without a completely separate printer for that purpose. There may be a separate print station for printing the certificates, but the print head may be shared by other printing functions, such as customer receipt printing. In this case, it may be necessary to avoid having the printing of so many discount certificates (and possibly other types of discount coupons) that other printing functions are precluded. Therefore, the printing of a discount certificate, or of a substantial part of the certificate, can be followed by a request for a time-out, to allow other printing functions to gain access to the printer. Until the time-out is complete, as determined in block 43, processing remains in the general wait state loop. When the time-out is complete, a time-out return is made, as indicated in block 50, to continue processing at the point from which the time-out was requested.

The present invention performs a variety of functions in connection with selective printing of discount coupons or certificates, all of which require no active customer participation except in the sense that each customer must be uniquely identifiable in some way. Currently, the most common way of identifying customers is by means of an identification card issued by a retailer. Customers are encouraged to obtain identification cards to facilitate payment by personal check, but the cards also provide the means for associating customer behavior with a unique customer or household. In this specification, the identification card (ID card) is described as the tool used for making this association. Typically, the customer ID card has a unique identifying number encoded on it using bar codes or a magnetic stripe, either of which can be conveniently read at the checkout counter. However, it will be understood that other means for customer identification are possible and also fall within the scope of this invention. For example, customers may be identified by a machine-readable driver's license, or a bank card, or even by means of fingerprint scanning, if the technology for doing so becomes available at reasonable cost.

FIG. 3 shows the input processing sequence 44 in more detail. First, in block 52, the input data is examined to determine whether it is redemption data. Each printed discount certificate will have a special bar code that can be read at the checkout counter, and and distinguished from the Uniform Product Codes that identify products, and from other codes on customer ID cards. If the input is not redemption data, it is checked, in block 53, to determine if it is a valid customer ID. If the input is not redemption data and is not a valid customer ID, it is next checked, in block 54, to determine if it is Uniform Product Code (UPC) data. If so, a record corresponding to the UPC in the input data is retrieved from the item record file 14 (FIG. 1), and is checked to determine whether the item is one that should trigger the generation of a cumulative discount certificate, as indicated in block 56. If the item is not one that has been preselected to trigger generation of a certificate, no further processing is needed for this item and a return is made to the general wait state, as indicated at 58. If the item is a triggering item, a corresponding record is retrieved from the checkout direct data base 24 (FIG. 1), as indicated in block 60. The succeeding processing steps generate a selective UPC list for the customer order presently being processed. The list contains only triggering items purchased by the customer. For purposes of this invention, a triggering item is defined as any item that has an effect on the terms of a discount deal. For example, purchase of a triggering item may be the sole criterion for initiating printing of discount coupon; or purchase of one or more triggering items may be a condition that qualifies the customer for a discount coupon for which he has qualified by reason of some past shopping activity. If the item being processed is not already in the list, as determined in decision block 62, it is placed in the list, as indicated in block 64. If the item is already in the list, the number of purchases of this item is incremented, as indicated in block 66, and a return is made to the general wait state processing loop, as indicated at 58. Repeated processing of data corresponding to purchased items, in blocks 54 through 66, results in the generation of a UPC list of triggering items, which may result in the printing of a coupon or certificate. This list is stored internally in the computer 20 until the end of the customer transaction, as indicated by the “tender” state of the checkout keyboard.

When the customer tenders payment for the order, the operator actuates a “tender” key to terminate the transaction and open a cash drawer at the checkout counter. The actuation of the tender key is detected as indicated in decision block 68. Prior to actuation of the key, processing proceeds from block 68 to the general wait state loop, as indicated at 58. Once the tender key has been detected, the cumulative discount list is examined to determine if it contains any items. If the list contains one or more items, these items are added to the customer purchase file, as indicated in block 71. This is the principal data gathering step, in which the purchases of triggering items are recorded for possible later analysis. In the most advanced form of the invention, everything the customer purchases may be a triggering item for which purchase data must be gathered for later use in targeting customers for specific promotional programs. Obviously, gathering purchase data on a “full basket” of items requires a very large storage capacity for the customer purchase files 22, but still employs the same principles described here.

After updating the customer purchase files, a decision is made as to whether any discount coupons or certificates should be printed, as indicated in block 72. This decision is based on both current and prior purchases, which are stored in the customer purchase file, and is further explained with reference to FIG. 3b. If the criteria have not been met, the UPC list for the transaction is cleared, as indicated in block 74, and return is made to the general wait state processing loop, via block 58. If the desired criteria are met, as determined in decision block 72, the appropriate checkout direct coupons are generated, as indicated in block 76, and is placed in a print queue, as indicated in block 78, before clearing the list (block 74) and returning to the general wait state loop via block 58.

A related aspect of the invention is the generation of printable coupons or certificates in response to the detection of a valid customer ID, in block 53. Some coupon deals do not require the use of data relating to the current customer transaction, and can therefore be processed as soon as the customer ID is detected, in block 53. A decision is made in block 72′ whether any coupons are to be generated for this customer. If so, the coupons are generated, as indicated in block 76′, and placed in the print queue, as indicated in block 78′. Otherwise a return is made directly to the wait state, as indicated at 58.

Printing the coupons or certificates is accomplished with the steps of output processing 46, as shown in more detail in FIG. 4. Basically, output processing involves three steps: printing a certificate from the print queue, as indicated in block 80, removing from the print queue an entry corresponding to the printed certificate (block 82), and logging the printing of the certificate (block 83) in the cumulative discount certificate log files 22 (FIG. 1). Then a return is made to the general wait state processing loop, via block 58. If other certificates remain to be printed, they will be retrieved from the print queue on a subsequent return to these output processing steps.

The only general aspect of the invention not yet discussed is certificate redemption. Each printed cumulative discount certificate is redeemable on a subsequent visit to the store. When the certificate is presented, the checkout counter operator scans a bar code on the certificate and this action generates input data to the personal computer 20 (FIG. 1). Input data relating to redemption is recognized, as indicated in decision block 52 (FIG. 3), and the redemption is logged, as indicated in block 84 of FIG. 3. Logging redemptions involves two basic functions: maintaining a cumulative record of certificates that have been redeemed, in the files 22 (FIG. 1), and applying the discount to the customer order.

Conditioning of Coupon Generation

As indicated in the description of FIG. 3, a decision whether or not to generate a printable discount coupon or certificate is made at either or both of two stages in the processing of input data. One of these stages, indicated at block 72′, is at the point at which a valid customer ID has been recognized but details of the present transaction are not considered in the decision. The other stage, indicated at block 72, occurs after the checkout counter clerk has actuated the tender key at the end of the customer transaction. More detailed processing of the decisions at 72′ and 72 are depicted in FIGS. 3a and 3 b, respectively.

As shown at block 85 in FIG. 3a, the first question posed in the coupon generation decision process is whether any coupon deals are presently in effect. If not, there is an immediate return to the general wait state 58. If so, the details of the coupon deals are retrieved from the checkout direct data base 24, as indicated at 86. Basically; these details define the terms and conditions of each coupon deal, including the item, items, or product category to which the discount applies, the effective dates of the discount, and the qualifying conditions. One of the qualifying conditions may be that the customer ID must fall within a targeted group of customers. Thus, the next question posed in the processing, at block 88, is whether the current customer ID falls within the targeted group for this particular discount coupon deal. The checkout direct data base 24 may contain a list of customer IDs for the coupon deal, or may instead contain a reference to another database file that contains the list. In any event, the decision process requires that the current customer ID be within the targeted group. The group may be selected for any desired single demographic attribute, or some combination of attributes, such as age, residence location, income level, number of children, and so forth. If the customer ID is not one of those targeted, exit is made to the general wait state and no coupon is generated.

If a customer ID is one of those targeted, other conditions may still have to be satisfied before a coupon is generated, and these conditions are tested in block 90. For some coupon deals, there may be no further condition to satisfy. For example, there may be a onetime discount deal to generate a coupon for a vitamin supplement for every customer over 60 years of age. However, other discount deals may be conditioned on prior customer behavior, as recorded in the customer purchase files 22. For example, a deal may conditioned on the customer's having purchased some minimum dollar total of products over the past month, or on the customer's having not purchased some item from a specified department of the store in the past month. If the additional conditions are not met, exit is made to the general wait state. Otherwise, processing continues with the generation of a printable discount coupon or certificate.

Processing of the decision of block 72 (FIG. 3) proceeds in a similar fashion, as depicted in FIG. 3b. The first question posed is whether there are any coupon deals in effect (block 92). If so, the details of the deals are retrieved from the checkout data base 24; if not, exit is made to the general wait state. At this point in processing, no further attention is paid to the customer ID, although this could also be a factor if desired. Basically, there are two broad tests to be satisfied before a decision is made to generate a printable coupon. The first test, in block 96, is to determine whether any designated past activity conditions have been met, and the second test, in block 98, is to determine whether any present activity conditions have been met. If both tests are passed, an appropriate printable coupon is generated; otherwise a return is made to the general wait state.

The past activity conditions may be anything for which information is available in the customer purchase files. For example, a discount deal may be conditioned on the customer's previous purchase of a particular product within a specified time frame. More particularly, there may be a discount for toothpaste if the customer bought toothpaste a month earlier, and may be near to running out of the same product. Such a deal may be further conditioned on the customer's not purchasing toothpaste in the present transaction, or on any desired combination of present purchases. Basically, the past activity test may involve any customer behavior that includes a time element. A further example is any condition relating to the frequency of purchase of certain items, or categories of items. Present activity conditions may be any desired combination of items purchased or not purchased, or a dollar amount threshold.

Each coupon deal may be designed for any desired objective, such as to reward brand loyalty by printing a discount when the customer buys selected products, or to encourage purchases in a specific department of the store, or to provide a timely discount when a product is likely to be needed by the customer.

Hardware and Software Overview

As mentioned earlier, the computer 20 is a personal computer, utilizing a microprocessor chip such as the Intel 80386. Software for performing the functions described above may run under a conventional operating system for such a computer, such as the Microsoft Disk Operating System (MSDOS). The functions described can be programmed in any desired manner or language.

Some details of the software will be dependent on the point-of-sale hardware with which the software must interface in obtaining data from the terminal processing loop (16, FIG. 1). Distinctly different interface programs will be needed to adapt the invention of operation with either IBM, Datachecker, NCR or Sweda point-of-sale systems, but the specification of these interfaces are design details not critical to the invention.

SUMMARY OF ADVANTAGES

The present invention facilitates the generation of printable discount coupons for a customer while in the store, but conditioned on a selected combination of present and past shopping activity of the customer. The conditions to be met before generating a coupon can range from simply falling within a preselected target group, by virtue of age, address, or other demographic factor, to any more complex combination of shopping activities, including prior purchases (or non-purchases) of selected items or categories of items, and present purchases.

It will also be appreciated that, although an embodiment of the invention has been described in detail for purposes of illustration, various modifications may be made without departing from the spirit and scope of the invention. Accordingly, the invention is not to be limited except as by the appended claims. 

We claim:
 1. For use in a retail store point-of-sale system having one or more terminals at customer checkout locations, each of said one or more terminals comprising means for reading product codes on purchased items in a customer order, a method for generating a printable discount coupon, said method comprising the steps of: (a) storing conditions of at least one discount coupon deal in a condition storing means; (b) uniquely identifying the customer whose order is being processed by scanning a scannable identification card; (c) identifying triggering products in the customer order while the customer is at one of the customer checkout locations, said triggering products being products upon which at least one of said conditions depends; (d) determining whether the customer order of the customer has satisfied all of the conditions of a discount coupon deal while the customer is at the customer checkout, said conditions including whether a triggering product that was previously purchased by the customer was purchased in a time period that spans a specified time prior to the present time of purchase by the customer; (e) storing data pertaining to the purchase of triggering products in the customer order in a customer purchase data file, for use in determining whether the customer satisfies conditions of present and future coupon deals; (f) generating data defining a discount coupon while the customer is at the customer checkout if the conditions are satisfied by the customer order of the customer; and (g) printing the discount coupon from the generated coupon data; wherein: (h) one of said conditions pertains to the present customer order of the customer, (i) the step of determining whether the customer has satisfied all of the conditions comprises determining whether the customer has met the coupon deal conditions pertaining to the present customer order; and (j) the step of identifying the purchase of triggering products in the customer order includes, (1) creating a list in which each entry corresponds to a different triggering product identified in the customer order, (2) adding to the list when a triggering product is identified that does not already have an entry in the list, and (3) incrementing an item count in the list when a triggering product is identified that already has an entry in the list.
 2. A system for generating a discount coupon in a retail store, said system comprising: (a) one or more terminals at checkout locations, each one of said one or more terminals including means for reading product codes on product items, means for uniquely identifying a customer placing an order, and means for generating an end of order signal, wherein said product codes read by one of said one or more terminals between successive end of order signals and an identification of a customer identified by said means for uniquely identifying a customer between the successive end of order signals constitutes a customer order; (b) a store controller for providing to said one or more terminals prices of product items of products and flag values designating selected ones of said products as triggering products; (c) condition storing means for storing conditions of discount deals; (d) a coupon computer coupled to said one or more terminals and to said condition storing means, said coupon computer comprising time of purchase determining means for determining a time of purchase of product items of any of said products by said customer; and (e) purchase data storing means coupled to said time of purchase determining means for storing customer purchase data, said customer purchase data including a product code of a product that is designated as a triggering product and that is contained in said customer order, a time of purchase of said triggering product having said product code contained in said customer order, and an identification of the customer who purchased said triggering product having said product code contained in said customer order, wherein: (f) said product code of said triggering product in said customer order, said time of purchase of said triggering product having said product code in said customer order, and said identification of the customer in said customer order are stored in said purchase data storing means in association with one another; (g) said customer purchase data stored in said purchase data storing means is updated if said customer order contains a product code for a triggering product; (h) said coupon computer further comprises condition determining means coupled to said purchase data storing means and to said condition storing means for determining if conditions of a discount deal have been satisfied based upon said customer purchase data stored in said purchase data storing means when an end of order signal is generated; (i) said conditions of said discount deal include whether a time of purchase of a product item of said triggering product by the customer is in a time period spanning a specified time prior to a time of purchase of a product item of any of said products by the customer; (j) said system further comprises generating means coupled to said condition determining means for generating data defining a discount coupon associated with said discount deal when said condition determining means determines that said conditions of said discount deal have been satisfied; (k) said system further comprises printing means coupled to said generating means for printing discount coupons based upon said data defining a discount coupon when said generating means generates said data defining said discount coupon; and (l) said one or more terminals and said store controller are connected together in a terminal processing loop ring bus configuration.
 3. A system for generating a discount coupon in a retail store, said system comprising: (a) one or more terminals at checkout locations, each one of said one or more terminals including means for reading product codes on product items, means for uniquely identifying a customer placing an order, and means for generating an end of order signal, wherein said product codes read by one of said one or more terminals between successive end of order signals and an identification of a customer identified by said means for uniquely identifying a customer between the successive end of order signals constitutes a customer order; (b) a store controller for providing to said one or more terminals prices of product items of products and flag values designating selected ones of said products as triggering products; (c) condition storing means for storing conditions of discount deals; (d) a coupon computer coupled to said one or more terminals and to said condition storing means, said coupon computer comprising time of purchase determining means for determining a time of purchase of product items of any of said products by said customer; and (e) purchase data storing means coupled to said time of purchase determining means for storing customer purchase data, said customer purchase data including a product code of a product that is designated as a triggering product and that is contained in said customer order, a time of purchase of said triggering product having said product code contained in said customer order, and an identification of the customer who purchased said triggering product having said product code contained in said customer order, wherein: (f) said product code of said triggering product in said customer order, said time of purchase of said triggering product having said product code in said customer order, and said identification of the customer in said customer order are stored in said purchase data storing means in association with one another; (g) said customer purchase data stored in said purchase data storing means is updated if said customer order contains a product code for a triggering product; (h) said coupon computer further comprises condition determining means coupled to said purchase data storing means and to said condition storing means for determining if conditions of a discount deal have been satisfied based upon said customer purchase data stored in said purchase data storing means when an end of order signal is generated; (i) said conditions of said discount deal include whether a time of purchase of a product item of said triggering product by the customer is in a time period spanning a specified time prior to a time of purchase of a product item of any of said products by the customer; (j) said system further comprises generating means coupled to said condition determining means for generating data defining a discount coupon associated with said discount deal when said condition determining means determines that said conditions of said discount deal have been satisfied; (k) said system further comprises printing means coupled to said generating means for printing discount coupons based upon said data defining a discount coupon when said generating means generates said data defining said discount coupon; (l) said one or more terminals and said store controller are connected together in a terminal processing loop ring bus configuration; and (m) said coupon computer: (1) is connected in said terminal processing loop and (2) appears to said store controller to be one of said one or more terminals.
 4. A system for generating a discount coupon in a retail store, said system comprising: (a) one or more terminals at checkout locations, each one of said one or more terminals including means for reading product codes on product items, means for uniquely identifying a customer placing an order, and means for generating an end of order signal, wherein said product codes read by one of said one or more terminals between successive end of order signals and an identification of a customer identified by said means for uniquely identifying a customer between the successive end of order signals constitutes a customer order; (b) a store controller for providing to said one or more terminals prices of product items of products and flag values designating selected ones of said products as triggering products; (c) condition storing means for storing conditions of discount deals; (d) a coupon computer coupled to said one or more terminals and to said condition storing means, said coupon computer comprising time of purchase determining means for determining a time of purchase of product items of any of said products by said customer; and (e) purchase data storing means coupled to said time of purchase determining means for storing customer purchase data, said customer purchase data including a product code of a product that is designated as a triggering product and that is contained in said customer order, a time of purchase of said triggering product having said product code contained in said customer order, and an identification of the customer who purchased said triggering product having said product code contained in said customer order, wherein: (f) said product code of said triggering product in said customer order, said time of purchase of said triggering product having said product code in said customer order, and said identification of the customer in said customer order are stored in said purchase data storing means in association with one another; (g) said customer purchase data stored in said purchase data storing means is updated if said customer order contains a product code for a triggering product; (h) said coupon computer further comprises condition determining means coupled to said purchase data storing means and to said condition storing means for determining if conditions of a discount deal have been satisfied based upon said customer purchase data stored in said purchase data storing means when an end of order signal is generated; (i) said conditions of said discount deal include whether a time of purchase of a product item of said triggering product by the customer is in a time period spanning a specified time prior to a time of purchase of a product item of any of said products by the customer; (j) said system further comprises generating means coupled to said condition determining means for generating data defining a discount coupon associated with said discount deal when said condition determining means determines that said conditions of said discount deal have been satisfied; (k) said system further comprises printing means coupled to said generating means for printing discount coupons based upon said data defining a discount coupon when said generating means generates said data defining said discount coupon; (l) said printing means comprises means for printing customer receipts; and (m) said coupon computer comprises means for sending a time out signal to said printing means following transmission to said printing means of data defining a discount coupon to allow said printing means to print customer receipts prior to resuming printing of coupons.
 5. A system for generating a discount coupon in a retail store, said system comprising: (a) one or more terminals at checkout locations, each one of said one or more terminals including means for reading product codes on product items, means for uniquely identifying a customer placing an order, and means for generating an end of order signal, wherein said product codes read by one of said one or more terminals between successive end of order signals and an identification of a customer identified by said means for uniquely identifying a customer between the successive end of order signals constitutes a customer order; (b) a store controller for providing to said one or more terminals prices of product items of products and flag values designating selected ones of said products as triggering products; (c) condition storing means for storing conditions of discount deals; (d) a coupon computer coupled to said one or more terminals and to said condition storing means, said coupon computer comprising time of purchase determining means for determining a time of purchase of product items of any of said products by said customer; and (e) purchase data storing means coupled to said time of purchase determining means for storing customer purchase data, said customer purchase data including a product code of a product that is designated as a triggering product and that is contained in said customer order, a time of purchase of said triggering product having said product code contained in said customer order, and an identification of the customer who purchased said triggering product having said product code contained in said customer order, wherein: (f) said product code of said triggering product in said customer order, said time of purchase of said triggering product having said product code in said customer order, and said identification of the customer in said customer order are stored in said purchase data storing means in association with one another; (g) said customer purchase data stored in said purchase data storing means is updated if said customer order contains a product code for a triggering product; (h) said coupon computer further comprises condition determining means coupled to said purchase data storing means and to said condition storing means for determining if conditions of a discount deal have been satisfied based upon said customer purchase data stored in said purchase data storing means when an end of order signal is generated; (i) said conditions of said discount deal include whether a time of purchase of a product item of said triggering product by the customer is in a time period spanning a specified time prior to a time of purchase of a product item of any of said products by the customer; (j) said system further comprises generating means coupled to said condition determining means for generating data defining a discount coupon associated with said discount deal when said condition determining means determines that said conditions of said discount deal have been satisfied; (k) said system further comprises printing means coupled to said generating means for printing discount coupons based upon said data defining a discount coupon when said generating means generates said data defining said discount coupon; (l) one of said conditions is that: (1) the customer last purchased a specified product more than a month earlier and (2) said customer order does not contain said specified product; and (m) said specified product is a toothpaste product. 